package com.hieu.sms.services;

import java.util.List;

import com.hieu.sms.model.Clazz;
import com.hieu.sms.model.Course;
import com.hieu.sms.model.CourseScoreFactor;
import com.hieu.sms.model.Department;
import com.hieu.sms.model.Major;
import com.hieu.sms.model.Teacher;
import com.hieu.sms.model.filter.CourseFilter;
import com.hieu.sms.model.filter.TeacherFilter;

public interface InformationServices {
	public List<Department> list()throws Exception;
	public void add(Department department) throws Exception;
	public void delete(Department department)throws Exception;
	public void update(Department department)throws Exception;
	
	public List<Major> findMajor(String depId) throws Exception;
	public void add(Major major)throws Exception;
	public void delete(Major major)throws Exception;
	
	public void add(Course course)throws Exception;
	public void update(Course course)throws Exception;
	public void delete(Course course)throws Exception;
	public List<Course> findCourse(String depId)throws Exception;
	public List<Course> findCourse(CourseFilter courseFilter)throws Exception;
	
	public void add(Clazz clazz)throws Exception;
	public List<Clazz>findClazz(String depId)throws Exception;
	public void delete(Clazz clazz)throws Exception;
	
	public List<CourseScoreFactor> findCourseScoreFactor(Course course) throws Exception;
	public void add(CourseScoreFactor courseScoreFactor)throws Exception;
	public void delete(CourseScoreFactor courseScoreFactor)throws Exception;
	
	public List<Teacher> findTeacher(TeacherFilter filter);
	public void add(Teacher teacher);
}
